package com.supermarket.mapper;

import com.supermarket.entity.Address;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface AddressMapper {
    // 插入地址
    int insertAddress(Address address);
    
    // 更新地址
    int updateAddress(Address address);
    
    // 删除地址
    int deleteAddress(@Param("id") Integer id);
    
    // 根据ID查询地址
    Address selectAddressById(@Param("id") Integer id);
    
    // 查询用户的所有地址
    List<Address> selectAddressByUserId(@Param("userId") Integer userId);
    
    // 查询用户的默认地址
    Address selectDefaultAddressByUserId(@Param("userId") Integer userId);
    
    // 设置用户默认地址（将指定地址设为默认）
    int setDefaultAddress(@Param("id") Integer id, @Param("userId") Integer userId);
    
    // 取消用户所有默认地址
    int cancelDefaultAddress(@Param("userId") Integer userId);
}
